perm filename FRAME.UTL[BNF,JRA] blob
sn#045427 filedate 1973-05-25 generic text, type T, neo UTF8
00050 (SETQ LST @(L S T))(SETQ FLUENTS @(AT NAT ON NON UNDER NUNDER))
00075 (DE TAX()(SETQ XX(IN <AXIOM>)))
00100 (DE UNION(X Y)(PROG NIL
00200 A(COND((NULL X)(RETURN Y))
00300 ((MEMQ (CAR X)Y))
00400 (T(SETQ Y(CONS(CAR X)Y))))
00500 (SETQ X(CDR X))(GO A)))
00600 (DE MAKENOT(X)
00700 (PROG(Z Z1)
00800 (SETQ Z(CONS(READLIST(CONS @N(EXPLODE(CAR X))))(CDR X)))
00900 (SETQ Z1(MAKEPRED Z))
01100 (RETURN(LIST @THCOND(LIST(LIST @THNOT Z)T)(LIST(LIST Z1)))) ))
01200
01250 )))
01260 (DE MAKEPRED(Z)(COND((MEMQ(CAR Z)FLUENTS)(LIST @THGOAL Z @(THTBF FILTEROP)))
01270 (T(LIST @THGOAL Z))))
01280
01300 (DE MAKEQUAL(X Y)(PROG(Z)
01400 (COND((EQ(CAAR X) @THV)(SETQ Z(LIST(LIST @THASVAL (CAR X))))))
01500 (COND((EQ(CAADR X)@THV)(SETQ Z(CONS(LIST @THASVAL(CADR X))Z))))
01600 (RETURN(LIST @THCOND(LIST(APPEND @(THAND) Z(LIST Y))
01700 @(THFAIL))
01800 @(T T))) ))
01900
02000 )))
02100 (DE MAKEARGS(P)(PROG(Z)(SETQ Z(LIST @THV(READLIST(APPEND(EXPLODE P)@(A R G S)))))
02200 (RETURN(LIST @THCOND(LIST(LIST @NULL Z)T)
02300 (LIST T(LIST @THSETQ Z(LIST @CDR Z)))))) )
02400 (DE PCBODY(PCL C)
02500 (CONS(CAR C)(COND((NULL(CADR C))(APPEND PCL(CDDR C)))
02600 (T(CONS(CADR C)(APPEND PCL(CDDR C)))))) )